home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / pluginy Firefox / 8605 / 8605.xpi / chrome / content / settings.js < prev    next >
Encoding:
Text File  |  2009-06-21  |  5.6 KB  |  145 lines

  1. function deviantAnywhereSettings()
  2. {
  3. //    this.passwordManager = Components.classes["@mozilla.org/login-manager;1"].getService(Components.interfaces.nsILoginManager);
  4. }
  5.  
  6. deviantAnywhereSettings.prototype =
  7. {
  8.     getMajorVer: function(ver)
  9.     {
  10.         return ver.substr(0,ver.indexOf("."));
  11.     },
  12.  
  13.     init: function()
  14.     {
  15.         document.getElementById("password").value = ro_cvds_daUtils.getUserData()?ro_cvds_daUtils.getUserData().password:"";
  16.         this.handleActionClick();
  17.         this.handleAutoLoginClick();
  18.         this.handleSoundClick();
  19.         this.handleCustomLookClick();
  20.         this.handleAutoUpdateClick();
  21.  
  22.  
  23.         info = Components.classes["@mozilla.org/xre/app-info;1"].getService(Components.interfaces.nsIXULAppInfo);
  24.         if (info.name=="Firefox" && this.getMajorVer(info.version)<3)
  25.         {
  26.             ro_cvds_daUtils.setPref("useautologin",false,ro_cvds_daUtils.boolPref);
  27.             document.getElementById("autoLoginLabel").setAttribute("label","Automatic login (not available in Firefox "+info.version+")");
  28.             document.getElementById("autoLoginCheck").setAttribute("disabled","true");
  29.         }
  30.         else
  31.         {
  32.             this.nsLoginInfo = new Components.Constructor("@mozilla.org/login-manager/loginInfo;1",Components.interfaces.nsILoginInfo,"init");
  33.             this.myLoginManager = Components.classes["@mozilla.org/login-manager;1"].getService(Components.interfaces.nsILoginManager);
  34.         }
  35.  
  36.         var osString = Components.classes["@mozilla.org/xre/app-info;1"].getService(Components.interfaces.nsIXULRuntime).OS;
  37.         if (osString!="Darwin")
  38.             document.getElementById("winButtons").style.display = "none";
  39.     },
  40.  
  41.     setDefaultBkg: function()
  42.     {
  43.         document.getElementById('bkgColor').color = '#728776';
  44.     },
  45.  
  46.  
  47.     setDefaultText: function()
  48.     {
  49.         document.getElementById('textColor').color = '#FFFFFF';
  50.     },
  51.  
  52.     handleActionClick: function()
  53.     {
  54.         document.getElementById("focusCheck").disabled = !ro_cvds_daUtils.getPref("openMsgOnNew",ro_cvds_daUtils.boolPref);;
  55.     },
  56.  
  57.     handleCustomLookClick: function()
  58.     {
  59.         document.getElementById("bkgColorLabel").disabled =
  60.         document.getElementById("bkgColor").disabled =
  61.         document.getElementById("defultBkg").disabled =
  62.         document.getElementById("textColorLabel").disabled =
  63.         document.getElementById("textColor").disabled =
  64.         document.getElementById("showIconCheck").disabled =
  65.         document.getElementById("defultText").disabled = !ro_cvds_daUtils.getPref("customLook",ro_cvds_daUtils.boolPref);
  66.     },
  67.  
  68.     handleAutoLoginClick: function()
  69.     {
  70.         document.getElementById("usernameLabel").disabled =
  71.         document.getElementById("username").disabled =
  72.         document.getElementById("passwordLabel").disabled =
  73.         document.getElementById("password").disabled =
  74.         document.getElementById("loginLink").disabled =
  75.         document.getElementById("whyBtn").disabled = !ro_cvds_daUtils.getPref("useautologin",ro_cvds_daUtils.boolPref);
  76.     },
  77.  
  78.     handleAutoUpdateClick: function()
  79.     {
  80.         document.getElementById("checkTimeLabel").disabled =
  81.         document.getElementById("checktime").disabled =
  82.         document.getElementById("checkTimeSuffix").disabled = !ro_cvds_daUtils.getPref("autoupdate",ro_cvds_daUtils.boolPref);
  83.     },
  84.  
  85.     handleSoundClick: function()
  86.     {
  87.         document.getElementById("soundLabel").disabled =
  88.         document.getElementById("sound").disabled = !ro_cvds_daUtils.getPref("playsound",ro_cvds_daUtils.boolPref);
  89.     },
  90.  
  91.     doOK: function()
  92.     {
  93.         user = document.getElementById("username").value;
  94.         pass = document.getElementById("password").value;
  95.         useThem = document.getElementById("autoLoginCheck").checked;
  96.  
  97.         if (useThem)
  98.         {
  99.             if (user && pass)
  100.             {
  101.                 loginData = new this.nsLoginInfo('chrome://deviantAnywhere','User auto-login', null,"Main User", pass, "", "");
  102.                 if (ro_cvds_daUtils.getUserData())
  103.                     this.myLoginManager.removeLogin(ro_cvds_daUtils.getUserData());
  104.                 this.myLoginManager.addLogin(loginData);
  105.             }
  106.             else
  107.             {
  108.                 alert("You must fill both 'Deviant name' and 'Password' fields");
  109.                 return false;
  110.             }
  111.         }
  112.  
  113.         bkgColor = document.getElementById("bkgColor").color;
  114.         textColor = document.getElementById("textColor").color;
  115.  
  116.         ro_cvds_daUtils.setPref("bkgcolor",bkgColor,ro_cvds_daUtils.stringPref);
  117.         ro_cvds_daUtils.setPref("textcolor",textColor,ro_cvds_daUtils.stringPref);
  118.  
  119.         browserWindow = Components.classes["@mozilla.org/appshell/window-mediator;1"]
  120.                         .getService(Components.interfaces.nsIWindowMediator)
  121.                         .getMostRecentWindow("navigator:browser");
  122.  
  123.         panel = browserWindow.document.getElementById("dAPanel");
  124.         if (ro_cvds_daUtils.getPref("customLook",ro_cvds_daUtils.boolPref))
  125.         {
  126.             if (ro_cvds_daUtils.getPref("showIcon",ro_cvds_daUtils.boolPref))
  127.                 panel.setAttribute("showIcon","true");
  128.             else
  129.                 panel.removeAttribute("showIcon");
  130.             panel.setAttribute("class","customLook");
  131.             panel.style.backgroundColor = bkgColor;
  132.             panel.style.borderColor = bkgColor;
  133.             panel.style.color = textColor;
  134.         }
  135.         else
  136.         {
  137.             panel.removeAttribute("showIcon");
  138.             panel.removeAttribute("class");
  139.             panel.style.color = "black";
  140.         }
  141.     }
  142. }
  143.  
  144. ro_cvds_dASettings = new deviantAnywhereSettings();
  145.